home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-07-25 | 66.8 KB | 1,623 lines |
- Subject: Welcome to comp.unix.xenix.sco [monthly FAQ posting]
- Newsgroups: comp.unix.xenix.sco,news.answers
- From: chip@chinacat.unicom.com (Chip Rosenthal)
- Date: Mon, 26 Sep 1994 00:15:24 GMT
-
- Archive-name: sco-xenix
- News-answers-archive-name: sco/xenix
- Posting-frequency: monthly
- Version: 1.58
-
- @(#) sco-xenix 1.58 94/08/29 06:15:57
-
- ------------------------------
-
- Subject: ***** Introduction
-
- Welcome to comp.unix.xenix.sco. This newsgroup is about the Xenix
- operating system from the Santa Cruz Operation (SCO). If you have an
- SCO Xenix question, then you've come to the right place.
-
- This is NOT the newsgroup for SCO Unix or Open Desktop questions. If
- you want to talk about other SCO operating systems, please show some
- courtesy and use an appropriate newsgroup, such as comp.unix.pc-clone.32bit.
- (Hey! Don't blame me. I voted against that silly name.) This is also
- NOT the right place for questions about Xenix implementations from
- other vendors. Use comp.unix.xenix.misc.
-
- Certain questions are asked frequently on the net. Frequently asked
- questions (FAQs) get old and boring after a while. We can stamp out
- FAQs in your lifetime! Please review this message before posting your
- question to comp.unix.xenix.sco.
-
- If you haven't already done so, please read the periodic postings in
- news.announce.newusers entitled "A Primer on How to Work With the Usenet
- Community", "Answers to Frequently Asked Questions about Usenet" and
- "Hints on writing style for Usenet". You should also review the
- comp.unix.questions FAQ postings. These answer general questions,
- such as `How do I delete a file with funny characters in the name?'
- and `How can I change my shell prompt?' C programmers should check
- out the FAQ in comp.lang.c.
-
- Whenever we talk about Xenix here, we really mean SCO Xenix System V.
- Our comments often won't apply to the other kinds of Xenix. Also, be
- particularly careful if you use Xenix/286. It's been ages since we've
- used it and some of our suggestions might not apply.
-
- This message is maintained and posted monthly by Chip Rosenthal. Your
- corrections, additions, and comments are encouraged. Please mail them
- to chip@chinacat.unicom.com. These questions and answers were written
- by Chip Rosenthal, Jeff Liebermann, Ronald Florence, Chip Salzenberg,
- Ronald Khoo, Vic Michael, and Stephen Bleazard. Helpful contributions
- and comments have been provided by Andrew Phillips, Peter Funk, Paul
- Warren, Lawrence Kirby, Kai Ruottu, Ray Malitzke, Chet Creider, Greg
- Lehey, and Marc Brumlik.
-
- Please examine the date near the top of this message. Any version
- older might be obsolete. The most up-to-date version of this FAQ may
- be retrieved from the following locations:
-
- The World Wide Web - http://www.unicom.com/
-
- Select "FAQs We Publish" from the main menu. Includes the FAQ
- by section and by question, as well as keyword searches.
-
- The Internet Gopher - gopher://gopher.unicom.com/
-
- Select "FAQs We Publish" from the main menu. Includes the FAQ
- by section and by question, as well as keyword searches.
-
- Anonymous FTP - ftp.unicom.com:pub/FAQ/sco-xenix
-
- Email Archive Server - archive-server@unicom.com
-
- Use "Subject: send FAQ/sco-xenix" header to retrive the FAQ.
- Body of message is ignored. Use "Subject: help" for more info.
-
- The most recently posted copy of this message also is available via
- anonymous FTP to rtfm.mit.edu in the "/pub/usenet/comp/unix/xenix/sco"
- directory. It also may be retrieved via e-mail. Send a message to
- "mail-server@rtfm.mit.edu" that says "send usenet/news/answers/sco/xenix".
-
-
- ------------------------------
-
- Subject: ***** Table of Contents
-
-
- ===> Product Questions:
-
- QA1. What is the difference between Unix and Xenix?
- QA2. What is the minimum system required to run Xenix?
- QA3. Should I buy Unix or Xenix?
- QA4. What are the current Xenix versions?
- QA5. Where can I get Xenix fixes?
- QA6. I'm using an older Xenix/386 version. What fixes do I need?
- QA7. Does SCO have a BBS?
-
-
- ===> General Xenix Questions:
-
- QB1. Can't boot. My system used to work.
- QB2. Configure(ADM) fails when I modify my system name.
- QB3. The system is crashing with `parity error' panics.
- QB4. Login fails without prompting for password.
- QB5. Can I use `gcc' instead of buying the SCO Development System?
- QB6. Program `foobar' dumps core with a stack overflow. [Xenix 286]
- QB7. Spell cannot initialize hash table.
- QB8. Will my laser printer work with the Text Processing Package?
- QB9. Where is crypt?
- QB10. How can email handle `internet' addresses or use a `smart host'?
- QB11. Where can I find freely available software for Xenix?
- QB12. Why don't my arrow keys work in `vi'?
- QB13. Why does `cron' die periodically?
-
-
- ===> Disk and Filesystem Questions:
-
- QC1. Can I use a disk bigger than 1024 cylinders?
- QC2. Why won't Xenix recognize my SCSI disk?
- QC3. Where is the `/u' filesystem I created?
- QC4. `WARNING!! - mounting: <usr> as <news>' message when booting.
- QC5. `POSSIBLE FILE SIZE ERROR' when running `fsck'.
- QC6. Is disk fragmentation curable?
- QC7. Can I put a CD-ROM drive on my Xenix system?
-
-
- ===> Communications Questions:
-
- QD1. How do I add more than 2 COM ports?
- QD2. How do I set a 19,200 baud rate?
- QD3. How can I have more mscreen(C) sessions?
- QD4. Upgraded to 2.3.4 and flow control broke with mscreen(C).
- QD5. Terminals act funny, modems drop characters, help!!
- QD6. Does Xenix support 16550A UARTs?
- QD7. How do I increase the number of `clists'?
- QD8. How do I change the 16550A trigger level?
- QD9. How do I adjust the `ttyhog' value?
- QD10. BSD based uucp can't connect to my machine.
- QD11. uucp truncates my system name to seven characters!
- QD12. What is the uucp `windows' patch?
- QD13. uucp gives `alarm' messages, eventually dies.
-
-
- ===> Display and Graphics Questions:
-
- QE1. How come Xenix won't recognize my VGA display?
- QE2. How can I do a printscreen under Xenix?
- QE3. How can I blank the console display when it is idle?
- QE4. How can I do graphics under Xenix? What programs are available?
- QE5. CGI graphics mangles grey scale on a mono VGA.
- QE6. CGI graphics fail on a LaserJet in landscape mode.
-
-
- ===> Networking Questions:
-
- QF1. What do I need to run TCP/IP?
- QF2. What do I need to run NFS?
- QF3. How can I run uucp over TCP/IP?
- QF4. What does "NOTICE: tcp sum: src C06C6901, sum 0000B004" mean?
-
-
- ===> Xenix and MS-DOS Interoperability Questions:
-
- QX1. Can Xenix share a hard disk with MS-DOS?
- QX2. Can Xenix access MS-DOS disks?
- QX3. Can Xenix execute MS-DOS programs?
- QX4. Can MS-DOS execute Xenix programs?
-
-
- ===> The (in)Famous Xenix Cheat-Sheet:
-
- QZ1. What the $%*&! is happening?
-
-
- ------------------------------
-
- Subject: ***** SECTION A - Product Questions
-
-
- QA1. What is the difference between Unix and Xenix?
-
- Xenix is Unix -- or at least one flavor of it. In the late 70's,
- Microsoft licensed the Unix sources from AT&T and ported them to
- a number of platforms. In those days, AT&T would license the Unix
- software but not the Unix name, thus each company had to invent
- their own name. Microsoft picked Xenix. Microsoft did not sell
- Xenix to end users. Instead, they licensed the software to OEMs
- (Intel, Tandy, Altos, SCO, etc.) who provided a finished end-user
- package. Microsoft no longer supports Xenix, and in fact never
- even offered a 286 or 386 version.
-
- Several Unix implementations for the PC architecture have been
- tried with varying levels of success. SCO Xenix for the PC/XT
- was one. Nearly all of the PC/XT implementations were clunkers,
- because the machine lacked the hardware necessary for robust Unix
- operations. The PC/AT offered hardware memory protection, and
- SCO Xenix/286 took advantage of it. SCO Xenix/386 added demand
- paged virtual memory. These added features made multiuser PCs
- viable, and SCO Xenix popular.
-
- SCO Xenix starts with a Unix System III base, throws in several
- Berkeley enhancements, and adds features to obtain conformance to
- the System V Interface Definition (SVID). Today, the bulk of the
- code is from System V. Xenix/386 even has capabilities to execute
- Unix programs. It differs, however, in many of the SVID `optional'
- areas people tend to expect of a full System V. SCO Xenix lacks
- a real `inittab', for example. You need to go to a real System V,
- such as SCO Unix, for all these features.
-
-
- QA2. What is the minimum system required to run Xenix?
-
- You can build a minimal, single-user Xenix system with an 80386SX
- computer, 2MB to 4MB RAM, and 40MB hard disk. A pretty spiffy
- system, suitible for development, would be an 80386DX computer
- with 4MB RAM and 80MB hard disk. Additional resources (more speed,
- more RAM, more disk) will be required to support additional users,
- large applications, networking, or X windows. Xenix/286 will run
- on a PC/AT, but you will quickly become frustrated with its
- limitations, especially if you are a programmer.
-
-
- QA3. Should I buy Unix or Xenix?
-
- If you are happy running Xenix now, don't rush to throw it away.
- Xenix will be around for some time. If, however, you are new to
- multi-user computing, you should consider Unix System V Release
- 3.2 or Release 4.X.
-
- There are a number of reasons why Xenix is slowly fading. It is
- a mature product. There will be few future enhancements. Fewer
- and fewer vendors are supporting it. Nearly every program written
- for Xenix will run under Unix too. Unix offers a lot more goodies
- and better performance than Xenix.
-
- One advantage to Xenix is that it requires less memory and disk
- space. At today's hardware prices that usually isn't a big deal.
- There are certain applications, however, where this is attractive.
-
- Although Unix has a lot more to offer, a number of Xenix enthusiasts
- wouldn't switch if you gave them a free copy of Unix. They would
- gladly forego the new features to avoid the bloat of System V.
-
-
- QA4. What are the current Xenix versions?
-
- Package Version `perms' file
- ---------------------- -------------- ---------------------------
- Xenix Runtime System 2.3.4 inst, dsmd, tpmd, rts, ext
- Xenix Runtime (286) 2.3.2 inst, dsmd, tpmd, rts, ext
- Development System(386) 2.3.1 soft
- Development System(286) 2.2.1 soft
- CGI 1.1.0 cgi
- Text Processing 2.3.0 text
- Manual Pages 2.3.0 man
- VP/ix 1.2.0 vpix
- TCP/IP Runtime 1.2.0 tcprt
- TCP/IP Development 1.0.1 tcpdev
- Streams Runtime 1.0.0 streamsrt
- Streams Toolkit 1.0.0 streamstk
- Int'l Supplement(386) 2.1.0 sup.os
- Int'l Supplement(286) 2.0.0 sup.os
-
- The perms column lists files found in the /etc/perms directory.
- The `#rel=' line in these files will tell you what version you
- have.
-
-
- QA5. Where can I get Xenix fixes?
-
- SCO provides Support Level Supplements (SLS) at no charge. There
- are several places that make them available through anonymous uucp
- and anonymous ftp.
-
- Internet users may retrieve SLSs by anonymous ftp from `ftp.sco.com'
- (see /SLS/info) and `ftp.uu.net' (see /vendor/sco/SLS/info).
-
- SLSs may be downloaded with anonymous uucp from SCO's `sosco'
- machine. To retrieve a shopping list of available SLSs, add one
- of the following to your `/usr/lib/uucp/Systems' file:
-
- # Telebit (PEP) modem
- sosco Any ACU 19200 14084291786u gin:-BREAK-gin:-BREAK-gin: uusls
- # Hayes V-Series modem
- sosco Any ACU 19200 14084274470 gin:-BREAK-gin:-BREAK-gin: uusls
- # 1200 or 2400 bps modem
- sosco Any ACU 300-2400 14084253502 gin:-BREAK-gin:-BREAK-gin: uusls
-
- European folks might prefer to use `scolon' instead. From within
- the UK, try:
-
- scolon Any ACU 300-19200 0923210911u \
- gin:-BREAK-gin:-BREAK-gin: uusls word: bbsuucp
-
- Outside the UK, replace the leading zero with the country code.
- A 9600bps Trailblazer answers this line. Delete the `u' at the
- end of the phone number if you aren't using a Telebit modem.
- Files are as on `sosco' but tend to be a week or so behind. Also,
- replace `sosco' with `scolon' `sosffm' in the examples below.
-
- In Germany, you can use:
-
- sosffm Any ACU 300-9600 069-50910736 \
- "" \r ogin:-BREAK-ogin: uusls sword: bbsuucp
-
- This modem supports V.32 transfers, but not PEP. We've been told
- this system is often behind the other sites.
-
- [LATE BREAKING NEWS: We've been told that "sosffm" has moved.
- If anybody knows where it went, please let the FAQ editor
- know. Thanks. -ed]
-
- Add to your `/usr/lib/uucp/Permissions' file:
-
- # REQUEST files only - i.e. cannot send to sosco.
- # rmail required to get bounced mail and error messages.
- MACHINE=sosco SENDFILES=yes REQUEST=no COMMANDS=rmail:uucp \
- WRITE=/usr/spool/uucppublic:/tmp
-
- To retrieve an SLS listing to your machine as /tmp/info:
-
- uucp sosco\!/usr/spool/uucppublic/SLS/info /tmp/info
-
- This file also provides directions on retrieving, unarchiving,
- and uncompressing the SLSs. There is also a `descriptions' file
- with additional details on the available SLSs.
-
- SLSs are also available on `uunet'. For example, to get the `info'
- file, run:
-
- uucp uunet\!~/vendor/sco/SLS/info /tmp/info
-
- Most of these machines also have Enhanced Feature Supplements (EFSs),
- games and graphics programs, and new termcap and terminfo terminal
- definitions in addition to SLS. Look for an `info' or `README' file
- one directory up from the `SLS' directory for more info.
-
-
- QA6. I'm using an older Xenix/386 version. What fixes do I need?
-
- Development System
-
- - 2.3.0 or older An upgrade to 2.3.1 must be purchased from SCO.
-
- - 2.3.1 Install `lng244'.
-
- Operating System
-
- - 2.2.X or older An upgrade to 2.3.4 must be purchased from SCO.
-
- - 2.3.0 or 2.3.1 SCO would like you to purchase a 2.3.4 upgrade.
- The `xnx137' fix would get you to 2.3.2, but SCO
- does not provide it any longer.
-
- - 2.3.2 Install `xnx296a' to get to version 2.3.3.
-
- If you have VP/ix and installed update UFJ, then your kernel is
- already at 2.3.3. None the less, you still want `xnx296a'. The
- `xnx296a' update is also known as UFN, and replaces UFJ and UFM.
- UFM was also known as the `xnx155b' update.
-
- You must install the development system before `xnx296a'.
-
- `xnx296a' provides you with most of the important fixes in 2.3.4.
- You will lack some of the nice enhancements such as updated man
- pages and the Korn shell.
-
- SCO preconfigures the kernel for a very minimal system. You should
- tune the kernel for your exact system configuration. See the
- "Tuning Kernel Parameters" chapter in the System Administrator's
- Guide.
-
-
- QA7. Does SCO have a BBS?
-
- Yes. The SOS Support BBS is $95/year. This is a good deal. You
- can:
-
- - download fixes, suggestions, and hints.
- - keyword access to the support problems database.
- - retrieve product info, release status, and hardware compatibility.
- - get support via email.
- - subscription to quarterly Discover newsletter.
-
- You can dial-in with a terminal program such as `cu' -- uucp is
- not required. Access is read-only, but most questions can be
- answered by the support database. SCO currently doesn't provide
- SOS access to most overseas users.
-
- Previous versions of this FAQ suggested joining the `SCO Developer
- Alliance'. For $100/year, it gave you BBS access along with other
- benefits. Somebody within SCO must have finally come to their
- senses and realized they were providing a worthwhile and valuable
- service to their customers. Can't have that! So, effective Jan
- 94, they jacked up the price almost 500%, thus ensuring no product
- offered by SCO could ever be remotely confused with a bargain.
- If you are a member of a Fortune 500 company, you might want to
- contact <devrel@sco.com> for info. If you are a small-time
- developer, then kiss off, loser.
-
-
- ------------------------------
-
- Subject: ***** SECTION B - General Xenix Questions
-
-
- QB1. Can't boot. My system used to work.
-
- Check the A: drive. If there is a floppy in there your system
- might spew garbage on the monitor or hang during boot. If this
- problem occurs right after rebuilding a new kernel, go read the
- FAQ on disks bigger than 1024 cylinder.
-
-
- QB2. Configure(ADM) fails when I modify my system name.
-
- If you select a site name of two, three, or four characters,
- `configure' will fail with an error message:
-
- space.asm(XXX): error A2050: Value out of range
-
- If the development system is installed, there is a workaround.
- Do the following:
-
- - cd /usr/sys/conf
-
- - Edit `xenixconf'. Search for the `nodename' line and enter
- the desired system name between the double quotes. For
- example, for machine name = `foo' this line should read:
-
- nodename "foo"
-
- - Similarly, edit the `master' file and correct the `nodename'
- line. For machine name = `foo' it should read:
-
- nodename NODE "foo"
-
- - Run `make'. This will rebuild the kernel data files and
- then link a new kernel.
-
- - Run `./hdinstall' to install the new kernel.
-
- Reboot the system, and the new node name should be in effect. To
- verify this, run `uname -a' after rebooting.
-
- This bug has been fixed in 2.3.4.
-
-
- QB3. The system is crashing with `parity error' panics.
-
- Everybody knows there are eight bits to a byte. Why, then, do
- PCs use 9-bit wide memory? That last bit is a parity check bit.
- It lets the system detect when data get corrupted while sitting
- in memory or in transit to the CPU.
-
- Prior to Xenix 2.3.3, parity errors were silently ignored. In
- these releases the system would continue to run -- for a while
- anyway. These days, if a parity error is detected the system
- will panic immediately and say:
-
- PANIC: memory failure - parity error
-
- Like the message says, this is almost always caused by memory
- problems. If it happens, run a good memory diagnostic overnight
- to try to locate the problem. Keep the cover on the computer
- while running diagnostics; heat tends to push a marginal memory
- chip into failure. Similarly, running the system with the cover
- off might make the problem go away. If it does, possible causes
- are marginal chips or bad ventilation.
-
- This problem can also be caused by a marginal power supply. Xenix
- boxes often have more power hungry peripherals than your run of
- the mill MS-DOS PC. For example, suspect the power supply if the
- panics occur as soon as the tape drive starts spinning.
-
-
- QB4. Login fails without prompting for password.
-
- If /dev/tty is missing or incorrect, you will get a `Login incorrect'
- message without ever being prompted for a password. For security
- reasons, the `login' program goes directly to /dev/tty to ensure
- the password comes from the keyboard. Your `tty' device should
- look something like:
-
- crw-rw-rw- 2 bin bin 3, 0 Oct 24 04:09 /dev/tty
-
- If necessary, use the `mknod' command to recreate it.
-
-
- QB5. Can I use `gcc' instead of buying the SCO Development System?
-
- Yes, but the task is bigger than you think. A compiler alone
- doesn't do any good if you lack header files, libraries, linker,
- etc. Don't forget about make, yacc, lex, etc. Fortunately, the
- repertoire of GNU software has grown to the point where you can
- fill in all these pieces. Many folks, particularly Steve Bleazard,
- Ronald Khoo, and Kai Ruottu, have done a lot of work getting `gcc'
- and the GNU utilities running on Xenix. So, with anonymous FTP
- access and a little elbow grease, you can do it.
-
- Steve and Ronald provided the first widely available kit to use
- gcc under Xenix. Their package was based on the gcc-1.40 release.
- The most recent version (we know of) available for SCO Xenix is
- gcc-2.5.7, ported by Kai. The Xenix-specific patches are available
- on `ftp.funet.fi:/pub/unix/386ix/xenix/gcc/gcc257.xenix', as well
- as unix.secs.oakland.edu.
-
- An alpha test version of a `libc' for Xenix is available from
- kate.ibmpcug.co.uk (in /ftp/pub/xenix/libc) and unix.secs.oakland.edu
- (in /pub/xenix); files XLIBC.README.Z and xlibc.shar.Z. It is
- based on the Berkeley Networking Release 2 tape. This package
- was developed for use with the gcc-1.40 kit, but might be of use
- with more recent versions too.
-
-
- QB6. Program `foobar' dumps core with a stack overflow. [Xenix 286]
-
- Xenix/286 programs request a fixed amount of space for the stack
- in the executable file header. A program that exceeds this limit
- will crash with a core dump. To fix, change the header to ask
- for more stack space. You can recompile your programs with the
- `-F' flag to increase the stack size. You can change the stack
- size of existing programs by running `fixhdr' with the `-F' flag.
- This is not a problem on 80386 binaries that use a variable stack.
-
-
- QB7. Spell cannot initialize hash table.
-
- The `spell' script (included in the optional Text Processing
- package) uses an 8086 binary. It needs to stuff a bunch of data
- into a single 64K segment. If you exceed this limit, you will
- get an error saying something like:
-
- table = malloc(0xc848) fails
- sbrk(0) = 0x3868
- spell: cannot initialize hash table
-
- You can usually get enough space for `spell' to run by clearing
- out your environment first. To do this, add the following line
- near the top of the `/usr/bin/spell' script:
-
- unset `env | sed -e '/^PATH=/d' -e '/^PS1=/d' -e 's/=.*//'`
-
-
- QB8. Will my laser printer work with the Text Processing Package?
-
- Xenix `troff' is based on a version written long before the advent
- of laser printers. The only thing old troff understands is C/A/T
- typesetters. Chris Lewis's `psroff' allows old troff to work with
- various devices, including Postscript and LaserJet printers.
- Version 3.0 is available from the comp.sources.unix archives.
- Another alternative is Rick Richardson's `jetroff', available in
- the comp.sources.misc archives.
-
- For production work, consider purchasing a device independent
- troff. Some of the suppliers of `ditroff' are Elan, Image Network,
- Leverage, and SoftQuad.
-
- Another alternative is the `groff' package by the Free Software
- Foundation. You can find it in any of the FSF archives -- but
- you will need `g++' to compile it. You will still need a backend
- program to use a LaserJet with `groff'. Some possibilities are
- `psroff', `jetroff', and `dvi2xx' on ftp.wu-wien.ac.at.
-
-
- QB9. Where is crypt?
-
- The DES encryption algorithm, the basis for `crypt', is categorized
- by the US Government as munitions. (Three cheers for the cold
- war!) SCO removes the crypt(S) procedure and crypt(C) command
- from Xenix so it may be exported. US domestic customers may
- contact SCO to obtain SLS LNG190B. If you simply need a crypt(S)
- procedure to compile programs that do password checking, you may
- get the SLS LNG255B `International Crypt SLS' from any of the
- aforementioned archive sites. This provides a crypt(S) procedure
- that supports encryption but not decryption, and it does not
- include the crypt(C) command. A number of non-domestic archive
- sites, for example the European GNU mirror sites, carry `crypt'
- replacements that were developed outside the US to avoid this
- export silliness.
-
-
- QB10. How can email handle `internet' addresses or use a `smart host'?
-
- Neither the SCO Xenix mail transport (/usr/lib/mail/execmail) nor
- the mail program (/usr/bin/mail) can handle so-called `internet'
- addresses (e.g. joe@acme.com). Nor can they use a `smart host'
- system to route your email to its final destination. If you want
- to add these features, you need to install a replacement transport
- and reconfigure the mailer to use this transport. For simple uucp
- connectivity, we recommend smail2.5 (archive name `smail3' published
- in comp.sources.unix volume 11). If you also need network
- connectivity (e.g. SMTP mail) then you'll need a more full-featured
- mailer such as smail3.1, sendmail, or MMDF.
-
- Although smail2.5 fits right into the SCO mail system, some
- modifications and installation tricks are required. Both Chip
- Salzenberg (see the comp.sources.misc archives) and Chip Rosenthal
- (contact chip@chinacat.unicom.com) have provided solutions.
-
- Whatever approach you use, you must tell /usr/bin/mail to pass
- messages off to execmail for delivery rather than handling them
- itself. Do this by adding a line which says `set execmail' to
- the /usr/lib/mail/mailrc file. You might also think about adding
- a nice, full-screen mailer program such as Elm or Mush.
-
-
- QB11. Where can I find freely available software for Xenix?
-
- Many of the freely available programs on archive sites and published
- on Usenet will run under Xenix with little or no modification. Assuming
- you have the Xenix Development System to compile it! See news.answers
- and comp.archives for information on archive sites.
-
- The following systems maintain software archives that specialize in Xenix.
-
- anomaly
-
- Administrator: Michael P. Deignan <mpd@anomaly.sbs.COM>
- Description: Source code for SCO Xenix, Unix, and ODT
- FTP Access: anomaly.sbs.risc.net [155.212.2.2], login=anonymous
- information in /SOFTLIST
- UUCP Access: 1-401-455-0347 (PEP), 331-3706 (V.32bis)
- login=xxcp, passwd=xenix, information in ~/SOFTLIST
- Mail Server: send email to "snarf@anomaly.sbs.com" with a Subject
- of "snarf" and the lines "snarf address <addr>"
- (replace <addr> with your email address) and "snarf
- help" to receive more information
- Comments: ftp is via serial connection so be patient, number of
- connections limited to prevent congestion
-
- Mirror Sites: sco-archive.maxcy.brown.edu:/pub/anomaly-mirror
-
- oakland.edu
-
- Administrator: Ron Srodawa <srodawa@vela.acs.oakland.edu>
- Description: SCO Xenix ports, particularly GNU software
- FTP Access: unix.secs.oakland.edu [141.210.180.2],
- login=anonymous, files in /pub/xenix
-
- wimsey
-
- Administrator: Stuart Lynne <sl@wimsey.com>
- Description: SLSs, SCO Unix (not Xenix) software in `custom' format
- FTP Access: ftp.wimsey.bc.ca [192.48.234.1], login=anonymous,
- information in /READ.ME.FIRST, /ls-lR.Z
- UUCP Access: 1-604-939-4782 (PEP), 1-604-937-7411 (V.32bis),
- 1-604-939-4756 (2400bps), login=nuucp, passwd=nuucp,
- information in ~ftp/READ.ME.FIRST, ~ftp/ls-lR.Z
- Guest Access: same phone numbers, login=guest, passwd=guest
- Comments: ftp is via serial connection so be patient, mostly
- Unix oriented but some of it might work with Xenix
-
-
- QB12. Why don't my arrow keys work in `vi'?
-
- For versions 2.3.3 and prior, probably because your `termcap'
- entry does not have then defined properly. For version 2.3.4,
- it's because `vi' is broke. If you have an older version of Xenix
- laying around, you might consider grabbing `vi' off of it instead.
- Note, however, that 2.3.4 `vi' gets its terminal information from
- the `terminfo' database, while prior versions use `termcap'.
-
-
- QB13. Why does `cron' die periodically?
-
- Because of a bug that gets triggered by looooong periods of
- inactivity. The problem is that if you don't give `cron' something
- to do, an internal counter overflows and it dies. The solution?
- Give it something to do! Use `crontab' to add something like this:
-
- 0 * * * * /bin/true
-
- That runs the `true' command once an hour, on the hour.
-
-
- ------------------------------
-
- Subject: ***** SECTION C - Disk and Filesystem Questions
-
-
- QC1. Can I use a disk bigger than 1024 cylinders?
-
- Yes. However, your root filesystem cannot extend beyond the 1024th
- cylinder, because that's as far as the BIOS can reach when booting
- the system. The BIOS is bypassed after Xenix boots, so cylinders
- beyond 1024 can be accessed once Xenix is running. It is not
- necessary to use a sector translation mode controller to reduce
- the number of cylinders. The translation mode is very slow.
-
-
- QC2. Why won't Xenix recognize my SCSI disk?
-
- Not all versions of Xenix support SCSI. Those that do only support
- certain SCSI adapters. First, verify your N1 floppy says `Type:
- 386GT' and not `Type: 386AT'. The AT version of Xenix (now
- obsolete) does not include any SCSI support.
-
- The GT version supports a limited number of SCSI host adapters.
- The Adaptec AHA-154x is supported. We've also used compatibles
- such as the Buslogic BT-542B. 2.3.4 added support for the
- WD-7000-FASST2. If you've got something different, you have to
- get a driver from the board vendor. The `SCO Hardware Compatibility
- Guide' (contact SCO sales for one) should be consulted whenever
- you have any hardware compatibility questions.
-
- Some typical installation mistakes are:
-
- - SCSI ID jumper for the root (boot) hard disk must be ID=0.
- - The BIOS must be set for drive C:=NONE in the CMOS setup program.
- - I/O port, memory address, or interrupt misconfiguration/conflict.
- - Terminating resistors installed only at ends of ribbon cable.
- - The parity jumper should be enabled on all drives and controllers.
-
- A word on terminating resistors: Terminators must be installed on
- the two devices at the end of the SCSI chain. If you have no external
- devices then one end of the chain will be the SCSI adapter -- so it
- gets terminators. The last device on the ribbon cable also needs
- terminators. The terminators must be removed from everything else on
- the SCSI chain.
-
- Note that some SCSI disk controllers mimic the standard ST-506
- interface. No special support is required for them; Xenix boots
- thinking you've got a plain old disk controller. See the instructions
- that came with your controller for details on cabling, strapping,
- terminating, etc.
-
- Note: If you are using Xenix 386GT 2.3.1-2.3.3 you should install
- xnx252b for ISA or xnx150 for MCA. This is an improved SCSI driver
- that yields a significant performance improvement.
-
-
- QC3. Where is the `/u' filesystem I created?
-
- When you create filesystems during the install procedure or with
- `mkdev hd', the filesystem is initialized but it isn't configured
- into the system. To perform that final step you need to run `mkdev
- fs'. For example, if you created a `/u' filesystem, run:
-
- mkdev fs /dev/u /u
-
-
- QC4. `WARNING!! - mounting: <usr> as <news>' message when booting.
-
- Due to a bug in the `mkdev fs' program, filesystems mounted below
- the root directory are labeled wrong. For example, if you mount
- a device `/dev/news' onto directory `/usr/spool/news', then you
- will get a warning message when going into multi-user mode. That's
- because `mkdev fs' labels the filesystem with the first component
- in the pathname (`usr' in this example) when it really should be
- the last component in the pathname (`news' in this example).
-
- This message is merely an annoyance and will not hamper system
- operation. To eliminate the warning, relabel the filesystem with
- the last component of the mount directory. For the above example,
- you may change the label from `usr' to `news' by running the command:
-
- fsname -s news /dev/news
-
-
- QC5. `POSSIBLE FILE SIZE ERROR' when running `fsck'.
-
- If `fsck' says `POSSIBLE FILE SIZE ERROR I=nnnn' don't panic. It
- almost always means `fsck' found a `sparse file', not a true
- filesystem error. A sparse file has holes in it. They are created
- when a program skips over sections of a file it is writing. The
- Xenix filesystem doesn't even bother allocating disk blocks for
- those holes, it just says the gaps are full of zeros. The complaint
- occurs because `fsck' calculates the number of disk blocks needed
- to store the file, counts up the number of disk blocks actually
- used by the file, and complains that the two don't match.
-
- When you get a file size error from `fsck' you should note both
- the `I=nnnn' inode number logged in the message and the filesystem
- which was being checked. You can see what the file is by running
- the following command:
-
- ncheck -i <nnnn> <fsname>
-
- where <nnnn> is the number logged in the error message and <fsname>
- is the pathname of the filesystem device, e.g. `/dev/u'. Chances
- are the file will either be a dbm(S) database file (in which case
- ignore the complaint, it's expected) or a `core' dump (in which
- case delete the `core' file).
-
-
- QC6. Is disk fragmentation curable?
-
- Not easily. However, the steps to slow down fragmentation are
- pretty simple.
-
- Xenix maintains a list of available disk blocks. As files are
- deleted, the released blocks are appended to this free list.
- Ideally, adjacent disk blocks would be used to create and grow
- files so that all the parts of the file sit together on the disk.
- Disk blocks, unfortunately, are allocated to files in the order
- they appear on the free list and without regard for location.
- Eventually, new files will be created with their data blocks
- scattered all around the disk. This fragmentation is undesirable
- because it slows down disk accesses.
-
- To slow down the tendency towards fragmentation, periodically
- reorder the blocks in the free list. To do this, dismount the
- filesystem (with `/etc/umount') and run `fsck -S'. You will get
- a message saying:
-
- FILE SYSTEM NOT MODIFIED, STILL DIRTY.
-
- Don't worry -- ignore that message.
-
- To determine how badly your filesystems are fragmented, run
- `fsanalyze' by Michael J. Young, from comp.sources.misc. You will
- need patchlevel 3 to analyze Xenix filesystems.
-
- The conventional cure for filesystem fragmentation is:
-
- - Make a full backup of the filesystem. Use `cpio' (or `afio' if
- you've got it). Do NOT use `tar'. It doesn't backup device
- nodes, pipes, or directories. You could use `dump', but we find
- it awkward. (n.b. Earlier versions of this FAQ claimed that
- `dump' would restore in a fragmented manner. That is incorrect.
- Sorry for the misinformation.)
-
- - Recreate an empty filesystem with `divvy' or `mkfs'. `divvy'
- is easier to use -- simply select the `create' option. However,
- `mkfs' will be required if you want a non-default number of
- inodes. Invoke `divvy' with:
-
- /etc/divvy -c 1 -b 1 # for 1st physical disk
- /etc/divvy -c 1 -b 1 -p 1 # for 2nd physical disk
-
- - Reload the filesystem from the backup.
-
- - Regenerate the `lost+found' directory. Run:
-
- # Substitute appropriate name for `foo'.
- /etc/fsck /dev/foo
- /etc/mount /dev/foo /foo
- mkdir /foo/lost+found
- for i in 1 2 3 4 5 6 7 8 ; do
- for j in 1 2 3 4 5 6 7 8 ; do
- touch /foo/lost+found/x$i$j
- done
- done
- rm /foo/lost+found/x??
- /etc/umount /dev/foo
-
- Be very careful with this procedure. We suggest you verify your
- backup is readable before zapping the filesystem. One mistake
- (especially when running `mkfs' or `divvy') will trash everything.
- The filesystem you trash may be your own.
-
-
- QC7. Can I put a CD-ROM drive on my Xenix system?
-
- No. Sure, it would be easy for somebody to write a device driver
- to talk to a CD-ROM drive. But that's not the whole story. If
- you want to use a CD-ROM, you need to be able to mount it as an
- ISO-9660/High Sierra filesystem. That's not so easy. See the
- FAQ on NFS for additional info.
-
-
-
- ------------------------------
-
- Subject: ***** SECTION D - Communications Questions
-
-
- QD1. How do I add more than 2 COM ports?
-
- Dumb serial cards (and internal modems) may be configured for Xenix
- as COM3 and COM4 -- with one big caveat. Each COM port requires its
- own interrupt number. If you have an unused IRQ and the Development
- System, you may build additional COM ports into the kernel. To
- illustrate the procedure, we will add a COM3 configured as follows:
-
- I/O Addr: 0x3E8
- IRQ: 5
- device: /dev/tty3a Major=5, Minor=4
- /dev/tty3A Major=5, Minor=132
-
- Serial devices are a two-fer, you get a "direct" device (tty3a)
- and a "modem control" device (tty3A). The two are distinguished
- by the minor device numbers -- add 128 to get the "modem control"
- device number.
-
- The device minor number you select *must* be in the range of 0
- through 15 inclusive. That's because the driver does bit twiddling
- that assumes the device unit number is located in the four least
- significant bits of the minor number. (Older versions of this
- message not only failed to point this out, but gave an example
- that would not work due to a bogus minor device number selection.)
-
- 1. Edit `/usr/sys/io/sioconf.c'.
-
- The two lines in this file that describe COM1 and COM2 are:
-
- {0,IBM_BOARD, 1,4,0, (sd)0x3f8,0, 0,MCRBIT3}, /*ibm COM1*/
- {1,IBM_BOARD, 1,3,8, (sd)0x2f8,0, 0,MCRBIT3}, /*ibm COM2*/
-
- Add a line that says:
-
- {2,IBM_BOARD, 1,5,4, (sd)0x3e8,0, 0,MCRBIT3}, /*ibm COM3*/
-
- See `/usr/sys/io/sioconf.h' for details.
-
- 2. Edit `/usr/sys/conf/master'.
-
- The serial ports are defined by the line:
-
- sio 4 0577 104 sio 0 0 5 1 7 3 4 33 34
-
- The last four fields define the interrupt numbers used. Change
- the `33' to a `5' since COM3 will be on IRQ5. For reference,
- here is the mapping between IRQ lines and the master file
- `magic numbers':
-
- IRQ0 0 IRQ4 4 IRQ8 30 IRQ12 34
- IRQ1 1 IRQ5 5 IRQ9 31 IRQ13 35
- IRQ2 31 IRQ6 6 IRQ10 32 IRQ14 36
- IRQ3 3 IRQ7 7 IRQ11 33 IRQ15 37
-
- 3. Rebuild the kernel. Run:
-
- cd /usr/sys/conf
- make
-
- Do not use `link_xenix' here. You need to run `make' to get
- `sioconf.o' and the kernel data files rebuilt.
-
- 4. Install the new kernel. Run:
-
- /usr/sys/conf/hdinstall
-
- This will make a backup of your current kernel to `/xenix.old'.
-
- 5. Create the device nodes. Run:
-
- mknod /dev/tty3a c 5 4
- mknod /dev/tty3A c 5 132
-
- Reboot your system, and the new serial port should be there.
-
-
- QD2. How do I set a 19,200 baud rate?
-
- For historical reasons, terminal speeds of 19200 and 38400 are
- called `EXTA' and `EXTB'. So, in the `/etc/gettydefs' file you
- need to say `EXTA' and `EXTB', not 19200 and 38400. These speeds
- are already available there as entries `n' and `o', respectively.
-
- Similarly, with the `stty' command you need to say:
-
- stty 9600 # set to 9600
- stty exta # set to 19200
- stty extb # set to 39400
-
- A smart serial card is recommended for these two highest speeds.
-
-
- QD3. How can I have more mscreen(C) sessions?
-
- The mscreen(C) facility provides multiple sessions from a serial terminal
- by `multiplexing' your terminal (tty) line onto several pseudo-terminal
- (pty) lines. Xenix is shipped with eight ptys enabled, that provides
- a system-wide limit of eight sessions through the mscreen(C) command.
-
- First off, you need to determine whether you are allocating mscreen(C)
- sessions wisely. For example, SCO ships an `/etc/mscreencap' file
- that runs six sessions on a WY-60 terminal. If you edit `mscreencap'
- and cut this down to three you immediately double the number of people
- who can run mscreen(C).
-
- You cannot increase this number beyond eight if you are running TCP/IP.
- (More about this in a moment.) If you are not running TCP/IP, then
- you can increase the number of possible mscreen(C) sessions by: first
- creating more ptys in the kernel, second creating the device nodes
- for the new ptys, and finally placing a `getty' upon each of these
- new ptys.
-
- To create more ptys in the kernel, increase the `nspttys' kernel
- parameter. With Xenix 2.3.4, run the `configure' command interactively
- and select the `Multiscreens' option. For older versions of Xenix,
- run `configure' manually. For example, to provide sixteen ptys, run:
-
- cd /usr/sys/conf
- ./configure nspttys=16
-
- Once `nspttys' is set, run `link_xenix' and `hdinstall' to build and
- install a new kernel.
-
- Next, you need to create the device nodes in the /dev directory for
- these additional ptys. Unfortunately, mscreen(C) uses a very poor
- naming strategy for ptys beyond the 8th. Once you go beyond the
- /dev/ttyp7 in the base Xenix distribution, mscreen(C) next looks for
- not /dev/ttyp8, but rather /dev/ttyp01. Therefore you should create
- the eighth pty with the commands:
-
- cd /dev
- mknod ttyp01 c 54 8
- mknod ptyp01 c 55 8
- chmod 666 ptyp01
- chmod 644 ttyp01
-
- You might notice that these names are the same ones used by `rlogind'
- and `telnetd' under SCO TCP/IP. Unfortunately, to use these ptys for
- mscreen(C) you need to place a `getty' on them -- but if you do then
- rlogin/telnet will break. Those running TCP/IP (and not weak of heart)
- can try editing the `/dev/ttyp' string in the `mscreen' binary and
- totally rename the pty devices.
-
- An alternative method to relieve the conflict between `mscreen'
- and TCP/IP is to use an `.mscreenrc' file. If you create a surplus
- of TCP/IP ptys, you can steal some of them for `mscreen'. Just
- create an `.mscreenrc' and enter the names of the ptys you want
- `mscreen' to use. Since the TCP/IP utilities start at the bottom,
- steal from the top and work down. The catch? You have to put an
- `.mscreenrc' file into the home directory of *every* user who will
- be using `mscreen'. Bleych.
-
- If necessary, ensure you edit `/etc/ttys' to add the new ptys.
- Don't forget to `enable' the lines to start a `getty' on them.
-
-
- QD4. Upgraded to 2.3.4 and flow control broke with mscreen(C).
-
- The 2.3.4 version of mscreen(C) was changed to run the tty line
- totally raw. This is required so that the ^S and ^Q keys are
- passed on to programs that need them, such as `emacs' and Foxbase.
- An unfortunate side effect of handling flow control on the other
- side of the session rather than directly by the tty is that response
- to flow control is a lot more sluggish. Now, when you hit ^S you
- might get another screenful of data before the display actually
- freezes.
-
- If you never run any applications that require full 8-bit transparency,
- one way to make flow control more responsive is to rename `mscreen'
- to `/usr/bin/mscreen.sco' and install the following script in its
- place:
-
- :
- tty=`tty`
- ( sleep 5 ; stty ixon <$tty ) &
- exec mscreen.sco
-
-
- QD5. Terminals act funny, modems drop characters, help!!
-
- If you are losing characters on your serial lines, consider the
- following steps:
-
- * Ensure that flow control is working right.
-
- * If you are running dumb COM ports, either upgrade the UART chips
- to 16550As or switch to a smart serial card.
-
- * If you have a lot of users or lots of high speed data lines,
- increase the number of `clist' buffers in the kernel.
-
- * If you upgraded to 16550A UARTs and this helped but did not
- solve the problem, then adjust the FIFO trigger level.
-
- * If you are running high speed lines on a loaded system, adjust
- the `ttyhog' value.
-
- When diagnosing serial problems, start at the top of this list
- and work down. If your flow control is broke, it will do no good
- to go poking around inside your Xenix kernel.
-
-
- QD6. Does Xenix support 16550A UARTs?
-
- The guts of a standard COM port is a UART (universal asynchronous
- receiver/transmitter) chip. Most serial ports use the 16450 or
- an equivalent chip. The 16550A is a pin-compatible, drop in
- replacement which adds 16-characters of on-chip FIFO buffering.
- The FIFOs reduce system loading and increase performance.
-
- Starting with 2.3.4, the `sio' driver recognizes 16550A UARTs and
- enables the on-chip FIFOs. Older versions of Xenix merely treat
- this chip as an expensive 16450. You can get 16550A support with
- any version of Xenix by installing the FAS driver written by Uwe
- Doering and based upon Jim Murray's `asy' driver. FAS was published
- in alt.sources, and is available at most reputable archive sites.
-
- We recommend sticking with the National Semiconductor NS16550A.
- Many manufactures make usable 16450 clones, but some of the 16550
- compatible chips aren't so compatible. Also, older versions of
- the 16550 are known to be broken. Ensure yours have an `A' suffix.
-
-
- QD7. How do I increase the number of `clists'?
-
- Xenix buffers terminal characters in data structures called
- `clists'. There is a fixed pool of clists on the system, and when
- that supply is exhausted incoming characters are dropped. Therefore,
- the more active users you have on your system, the larger this
- pool of clists should be. The default configuration is 100 clists.
- Each terminal line requires an average of 5 to 10 clists. High
- speed modems need more. A conservative strategy would be to
- allocate 15 clists per active terminal. For example, if you have
- 16 serial ports and 4 console screens active at once, allocate
- (16+4)*15 or 300 clists.
-
- To see the number of clists on your system, login as root and run:
-
- cd /usr/sys/conf
- ./configure -y NCLIST
-
- To change the number of clists, say to 300, login as root and run:
-
- cd /usr/sys/conf
- ./configure NCLIST=300
-
- then rebuild and install a new kernel and reboot.
-
-
- QD8. How do I change the 16550A trigger level?
-
- If installing a 16550A UART helped but didn't totally fix a lost
- character problem, and your system is heavily loaded, then there
- is something else you can try. If you installed a 16550A and
- there was no effect at all, then skip this -- it won't help.
-
- The Xenix `sio' driver initializes the 16550A with a trigger level
- of 14. This means that under continual data streams the UART will
- wait until 14 characters accumulate before telling Xenix to come
- get them. This gives the system two character times to get in
- and service the COM port. If Xenix does not service the port in
- that time the 16-character buffer will overflow and and characters
- will be dropped. This might happen on a heavily loaded system.
-
- The trigger level is initialized at boot time from the 16-byte
- `sio_fifoctl[]' array. This array specifies the UART control
- register initialization values for device minor numbers 0 through
- 15. Or more exactly, the minor number is ANDed with 0x0F to get
- the index into this array. For example, the initialization for
- /dev/tty2a (minor=8) is in `sio_fifoctl[8]'. The possible values
- are as follows:
-
- sio_fifoctl: 0xCF 0x8F 0x4F 0x0F
- trigger level: 14 8 4 1
-
- The standard value is 0xCF. A smaller value will notify the system
- earlier that characters are waiting, thus providing the system
- more time to service the port, but increasing the number of
- interrupts generated by the port.
-
- As an example, here is how to change the trigger level for /dev/tty2a
- (and /dev/tty2A) to 8 characters (code=0x8F):
-
- cp /xenix /xenix.save # make a backup!
- adb -w /xenix # use "/etc/_fst" if no "adb"
- * sio_fifoctl+8/x
- sio_fifoctl+0x8: 0xcfcf
- | |
- | `---- This is the 8-bit value for the
- | port we want (minor=8).
- |
- `------ This is the 8-bit value for the
- next port (minor=9).
- * sio_fifoctl+0x8/w 0xcf8f
- sio_fifoctl+0x8: 0xcfcf= 0xcf8f
- * $q
-
-
- QD9. How do I adjust the `ttyhog' value?
-
- Since Xenix has a fixed pool of clists, the kernel tries to prevent
- one tty from hogging all of them. The limit is defined by `ttyhog',
- and defaults to 256 (0x100 hex). This limit might be too low if
- you've got some particularly fast devices on a particularly slow
- system. To change the `ttyhog' value you must patch the kernel
- image. The following increases `ttyhog' to 512 (0x200 hex).
-
- cp /xenix /xenix.save # make a backup!
- adb -w /xenix # use "/etc/_fst" if no "adb"
- * ttyhog/x
- _ttyhog: 0x100
- * ttyhog/w 0x200
- _ttyhog: 0x100= 0x200
- * $q
-
-
- QD10. BSD based uucp can't connect to my machine.
-
- BSD based uucp sends even parity. Xenix uucp expects no parity.
- Add:
-
- "" P_ZERO
-
- to the chat script in their (not your) `Systems' or `L.sys' file.
- For example, the following works on a Sun 3:
-
- xnxbox Any uucp 19200 5553333 "" P_ZERO "" \r in:--in: nuucp
-
-
- QD11. uucp truncates my system name to seven characters!
-
- This misfeature was introduced in the xnx155b supplement. The
- story we hear is that SCO broke their `uucp' to cater to systems
- that choke on long system names. There is a workaround. For
- system name = `verylongname', add to every record in the
- /usr/lib/uucp/Permissions file:
-
- MYNAME=verylongname
-
- Next, rename /usr/bin/uuname to /usr/bin/uuname.sco. Replace
- /usr/bin/uuname with:
-
- :
- if [ $# -ne 1 -o "X$1" != "X-l" ] ; then
- exec /usr/bin/uuname.sco $@
- exit 1
- fi
- head -1 /etc/systemid
- exit $?
-
- This allows programs using `uuname' to receive the correct,
- untruncated name.
-
-
- QD12. What is the uucp `windows' patch?
-
- uucp transmits data in packets, usually 64 bytes apiece. An
- acknowledgment is required for every packet sent -- but not
- immediately. A window of unacknowledged packets is allowed. The
- default window size is three, that means `uucico' won't stop
- sending unless it falls more than three packets behind. A three
- packet window isn't big enough for very fast media and long delay
- media. The `uucico' binary can be patched to increase the window
- size by the following manual procedure:
-
- cd /usr/lib/uucp
- cp uucico uucico.old # make a backup copy!!
- adb -w uucico
- * windows/x # display windows value
- _windows: 0x3
- * windows/w 7 # change it to seven
- _windows: 0x3= 0x7
- * $q # done
-
- If you have Xenix 2.3.4 but not the Development System, use
- `/etc/_fst' instead of `adb'. If you can't find adb on your
- system, look on the N02 disk.
-
- This change increases the window size to seven -- the maximum
- possible. A similar change must be performed on the remote system's
- uucico because the actual window size is negotiated as part of
- the protocol startup.
-
-
- QD13. uucp gives `alarm' messages, eventually dies.
-
- If you run uucp in debugging mode (`uutry -x9') and see it get
- stuck like:
-
- alarm 1
- send 37777777621
- alarm 2
- send 37777777621
- alarm 3
- send 37777777621
- alarm 4
- send 37777777621
-
- and eventually die, this means your system got jammed waiting for
- a response that never came. The most common cause of this problem
- running uucp across a modem with XON/XOFF flow control enabled
- (e.g. a Telebit modem with S58=3). You can't do that; you must
- run with no flow control or RTS/CTS handshaking (on a Telebit that
- would be S58=0 or S58=2, respectively). Other possible causes of
- this problem are serial cards with broken handshaking or running
- out of clists.
-
-
- ------------------------------
-
- Subject: ***** SECTION E - Display and Graphics Questions
-
-
- QE1. How come Xenix won't recognize my VGA display?
-
- Probably because you are running a very old version of Xenix.
- VGA support was introduced in release 2.3.0.
-
-
- QE2. How can I do a printscreen under Xenix?
-
- MS-DOS users can produce a screen printout with one keystroke.
- Xenix does not offer this builtin capability. SCO's MultiView
- product provides this. Also, it can be simulated with the following
- script:
-
- :
- # @(#) prtscrn Print Screen
- # execute from cu as ~!prtscrn
- oldstty=`stty -g` # save stty
- stty -echo ixon ixoff -ixany # no echo
- /bin/echo '\033[2i\c' # send screen to host
- # grab 24 lines, clean up trailing blanks, print it
- sed -e 's/ *$//' -e 24q | lp
- stty $oldstty # put stty back when done.
-
- Another approach is the `prtscrn2' program by Chip Rosenthal. It
- grabs the contents of any console screen and sends it to standard
- output. See comp.sources.misc.
-
-
- QE3. How can I blank the console display when it is idle?
-
- A screen blanker is built into the new console driver, provided
- by 2.3.4 or 2.3.3 via SLS xnx296a. It is finicky about the hardware
- it likes. Anything less than a VGA display will not work. To
- enable the blanker, as root:
-
- cd /usr/sys/conf
- ./configure
-
- Select option 6 (MultiScreens) and enter a non-zero value for TBLINK.
- (The manual incorrectly calls this TBLNK.) Then ./link_xenix and
- ./hdinstall.
-
- If the built-in blanker doesn't like your video adapter or you
- have an older version of Xenix, save the following script to a
- file and run it out of cron every fifteen minutes or so. It will
- check if all console multiscreens have been idle for ten minutes
- or more, and if so switch the display to an unused screen (as
- configured by SCRN).
-
- :
- who -u | awk '
- $2 !~ /^tty[01][0-9]$/ {next} # Not a console screen.
- $6 == "." {exit(1)} # Screen in use.
- $6 ~ /^0:0/ {exit(1)} # Not idle long enough.
- ' >/dev/null 2>&1
- if [ $? -eq 0 ] ; then
- # Leading "\0" aborts any pending escape sequence.
- SCRN=10
- echo "\0\033[${SCRN}z\c" >/dev/tty01
- fi
-
-
- QE4. How can I do graphics under Xenix? What programs are available?
-
- There are two approaches to graphics programming. At the very
- lowest level, the screen(HW) manual page describes ioctl() codes
- to access the video display memory and controller. Device-independent
- graphics is provided by the Computer Graphics Interface (CGI)
- package included with the Xenix Development System. CGI drivers
- are provided for VGA, EGA, and Hercules displays; Epson, LaserJet,
- and Postscript printers; and HP plotters. Several programs have
- been posted to the net that run under CGI, such as gnuplot,
- starchart, and gif. See comp.sources.misc.
-
-
- QE5. CGI graphics mangles grey scale on a mono VGA.
-
- SCO fixed their monochrome VGA driver in version 2.3.3. The
- default color mapping in CGI maps many colors with the identical
- total intensity. They appear as the same shade grey-scale display.
- Try using the CGI functions vs_color() and/or vsc_table() to create
- a color map that works with your display. Try vsf_style() to
- create hatching or other fill-patterns in place of colors.
-
-
- QE6. CGI graphics fail on a LaserJet in landscape mode.
-
- A bug in the CGI 1.1.0 LaserJet driver causes all output to
- appear on a single line. In landscape mode the driver puts out
- a spurious escape sequence `\033&a864V' that forces all output
- to the same position on the page. You can either remove the
- offending escape sequence from the driver with a binary editor
- (keep a backup copy), or use a filter to clobber that sequence
- from the output.
-
-
- ------------------------------
-
- Subject: ***** SECTION F - Networking Questions
-
-
- QF1. What do I need to run TCP/IP?
-
- The SCO TCP/IP Run-Time includes *almost* everything you need to
- connect a Xenix system to a TCP/IP network. You get the drivers
- for several popular network interface cards (NICs), the protocol
- stacks, and most of the familiar programs like `telnet' and `rcp'.
- We say `almost' because the TCP/IP package requires Streams, and
- that's an extra-cost option. You need to buy and install the
- Streams Run-Time before you can load TCP/IP. Furthermore, if you
- want to develop or compile network programs, you will need the
- TCP/IP Development System too.
-
-
- QF2. What do I need to run NFS?
-
- Unix. :-)
-
- Nobody offers an NFS for Xenix, and don't hold your breath waiting
- for one. It is very difficult adding new filesystem types to
- Xenix. The `FS' in NFS does stand for `File System' after all.
-
- Newer versions of Unix provide mechanisms that allow new filesystem
- types to be added easily (the `vnode' mechanism in BSD Unix and
- the `filesystem switch' in System V 3.2 and beyond). With Xenix,
- the filesystem support must be coded right into the kernel. The
- task of merging NFS code with VP/ix hacks, Xenix-net hacks, etc.
- is more than can be justified. And because it requires kernel
- source, it is unlikely a third party would do this.
-
-
- QF3. How can I run uucp over TCP/IP?
-
- The Xenix `uucico' doesn't know about networking, and the Xenix
- TCP/IP package doesn't do anything to solve that problem. Chip
- Rosenthal <chip@chinacat.unicom.com> has published a program called
- `uucpm' that works around this problem to allow an SCO Xenix system
- perform uucp transfers across the network. Contact him if you
- need a copy.
-
-
- QF4. What does "NOTICE: tcp sum: src C06C6901, sum 0000B004" mean?
-
- That a bad TCP segment was received. One possible reason for this
- is a buffer overrun caused by a slow system, a lousy network card,
- or a heavy network load. Most TCP/IP implementations silently
- detect these errors and ask the remote system to re-transmit.
- SCO's TCP/IP decides to whine to the console as well.
-
- You can tell what the other system is by getting out your hex
- calculator (c.f. the bc(C) command) and plugging in the `src'
- address. In the above example, 0xC0=192, 0x6C=108, 0x69=105, and
- 0x01=1. So the sending machine was 192.108.105.1.
-
- If you get these messages on occasion or only under heavy network
- load, don't worry too much. If they are frequent then consider a
- faster network card with more buffering, a faster computer, or
- go looking for cabling problems.
-
- If you get tired of seeing these messages, you can shut them off:
-
- cp /xenix /xenix.save # make a backup!
- adb -w /xenix # use "/etc/_fst" if no "adb"
- * tcpprintfs/d
- _tcpprintfs: 1 # currently "1" -> enabled
- * tcpprintfs/w 0 # set to "0" -> disabled
- _tcpprintfs: 0x1= 0x0
- * $q
-
-
- ------------------------------
-
- Subject: ***** SECTION X - Xenix and MS-DOS Interoperability Questions
-
-
- QX1. Can Xenix share a hard disk with MS-DOS?
-
- Yes. SCO directly supports an MS-DOS 3.2 partition on the same disk as
- your Xenix partition. You must:
-
- - Install MS-DOS 3.2 bootable partition as the FIRST partition.
-
- - Install Xenix bootable as the next partition.
-
- - Select Xenix as the `active' partition.
-
- At the
-
- Boot
- :
-
- prompt either type `dos' for MS-DOS boot or press ENTER for Xenix.
-
- If you create any other type of partition (e.g. one of the new,
- larger sized MS-DOS 5.0 partitions) or forget to create the MS-DOS
- partition before loading Xenix, then you can still access it by
- booting from a floppy disk.
-
- It is possible to provide `dual boot' capability for other partition
- types, for example MS-DOS 5.0 large partitions, by making a modified
- version of the /dos program. The following instructions, based
- upon a procedure by Vic Michael <victor@alchemy.UUCP>, show how.
-
- su # become superuser
- cp /dos /dos5 # make a new version of dos5 program
- adb -w /dos5 # use "/etc/_fst" if no "adb"
- * 0x3f:0x61?i # examine instruction at 0x61
- 0x3f:0x61: add al,0x4
- * 0x61?w 0x604 # change '0x4' to '0x6'
- 0x3f:0x61: 0x404= 0x604
- * 0x61?i # verify change
- 0x3f:0x61: add al,0x6
- * $q
-
- Now, you can say `dos5' at the `Boot' prompt to start MS-DOS. You
- will NOT, however, be able to use the `dos(C)' tools to access this
- partition from Xenix.
-
-
- QX2. Can Xenix access MS-DOS disks?
-
- Yes, with limitations. The commands on the `dos(C)' manual page
- provide access to MS-DOS disks (floppy and fixed) under Xenix.
- The limitation is that only conventional MS-DOS 3.2 hard disk
- partitions can be recognized. Extended MS-DOS 3.2, old MS-DOS
- 1.0, and large MS-DOS 4.0/5.0 partitions cannot be accessed with
- the existing tools.
-
- If you run into problems with the dos(C) commands, check that
- `/etc/default/msdos' provides proper aliases for the A:, B:, etc.
- devices. Also, if root can access the MS-DOS fixed disk but users
- can't, check the permissions on /dev/hd0d (the Xenix name of the
- MS-DOS partition on the first fixed disk).
-
- The `mtools' package by Emmet Gray in comp.sources.misc provides
- better handling of MS-DOS devices under Xenix. Modify the
- `devices.c' file to understand Xenix device naming.
-
- #ifdef M_XENIX
- struct device devices[] = {
- {'A', "/dev/install", 0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
- {'B', "/dev/install1", 0L, 12, 0, (int (*) ()) 0, 0, 0, 0},
- {'C', "/dev/hd0d", 0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
- {'D', "/dev/hd1d", 0L, 16, 0, (int (*) ()) 0, 0, 0, 0},
- {'\0', (char *) NULL, 0L, 0, 0, (int (*) ()) 0, 0, 0, 0}
- };
- #endif /* M_XENIX */
-
- If you assign `/dev/install' to the `A' drive, you don't need to
- worry about disk density when reading and writing. However, you
- need to specify the full device name when formatting. For example,
- to format a high-density disk in drive A: you must specify the
- full device name:
-
- dosformat /dev/fd096ds15
-
-
- QX3. Can Xenix execute MS-DOS programs?
-
- Yes. You must purchase SCO VP/ix. VP/ix emulates an 8086 PC/XT
- running MS-DOS. The compatibility provided by VP/ix is fair with
- a significant performance penalty. VP/ix will not run programs
- that use 80286 or 80386 instruction codes. VP/ix is not available
- for Xenix/286.
-
-
- QX4. Can MS-DOS execute Xenix programs?
-
- No. With the Xenix Development System, you can compile programs
- to execute under MS-DOS with the `-dos' command line switch.
-
-
- ------------------------------
-
- Subject: ***** SECTION Z - The (in)Famous Xenix Cheat-Sheet
-
-
- QZ1. What the $%*&! is happening?
-
- Who am I? /usr/bin/who am i
- Where am I? /bin/pwd
- What am I doing? /bin/ps -f
- Am I having fun yet? /usr/games/worms -R
- What's my user/group id? /usr/bin/id
- Who did I login as? /usr/bin/logname
- What's my terminal? /bin/tty
- What are my terminal parameters? /bin/stty -a
- Is terminal flow control working? /usr/games/stars
- What is my current crontab file? /usr/bin/crontab -l
- Do I have uucp jobs queued? /usr/bin/uustat
- What is the system doing? /usr/bin/w
- How is the system running? /usr/bin/vmstat 10
- Has the system been swapping? /usr/bin/vmstat -s
- Open files, inodes, processes? /bin/pstat | grep '^[0-9]'
- What are the kernel parameters? /usr/sys/conf/configure -x
- What versions are installed? egrep "#prd|#set|#rel" /etc/perms/*
- What are the hardware settings? /etc/hwconfig -h
- Is /etc/passwd correct? /etc/pwcheck
- Is /etc/group correct? /etc/grpcheck
- Is /etc/gettydefs correct? /etc/getty -c /etc/gettydefs
- Do all files have owners? /usr/bin/quot
- Who is using all the disk space? /usr/bin/quot
- When did joe last login? /usr/bin/last joe
- What files are owned by UID=944? find / -user 944 -exec l -d {} \;
- Are file perms/owners set OK? cd / ;
- /etc/fixperm -n /etc/perms/rts
- How about perms on uucp files? cd / ;
- /etc/fixperm -nd UUCP /etc/perms/rts
- Check uucp file consistency. /usr/lib/uucp/uucheck
- What are uucp access permissions? /usr/lib/uucp/uucheck -v
- What is the print spooler doing? /usr/bin/lpstat -t
- Stop the scheduler. /usr/lib/lpshut
- Restart a printer. /usr/lib/accept printer_name ;
- /usr/bin/enable printer_name
-
- [Following apply only if TCP/IP is installed.]
-
- Where am I? /usr/bin/hostname
- Is system foo alive? /usr/bin/ping foo
- What machines are connected? /usr/bin/netstat
- How is the network doing? /usr/bin/netstat 10
- Where are the packets going? /usr/bin/netstat -r
- Network not work? /usr/bin/netstat -s
-
- [Thanks to Jeff Liebermann.]
-
-
- ------------------------------
-
- Subject: ***** The Fine Print
-
- This collection is Copyright 1992-1994, Unicom Systems Development, Inc.
- All rights reserved. Permission granted to reproduce and distribute this
- document provided this notice remains intact and any changes to the document
- are clearly marked. We have tried to review all information, but cannot
- guarantee it for any particular purpose. We do not offer any warranties or
- representations, nor do we accept any liability for any damage resulting
- from the use or misuse of information or procedures in this document.
-
- [ end of sco-xenix 1.58 ]
-
-